
// Copyright (c) 2023 Wang Baisheng <baisheng_wang@163.com>, Wang Shenghan. All Rights Reserved.

#pragma once

#include "include/types.h"

struct task {
    unsigned long id;
    unsigned long rip;
    unsigned long rsp0;
    unsigned long kstack;
    unsigned long pml4;

    struct task* next;
    struct task* prev;
};

extern unsigned long ret_from_kernel;
extern struct task* current;

void sched_init();
